<?php
/*
Autor: Jonathan Vindas Abarca
Fecha: 21/11/2012
Descripción: Este archivo contiene la declaración de funciones para obtener datos de la tabla de formatos
de la base de datos SQL Server.
Bitacora de modificaciones:
<
    Autor: 
    Fecha: 
    Descripción: 
>
*/
function agregarFormatoModelo( $nombreReporte, $comentarioFormato, $codigoCliente, $codigoCompania)
    {
        require_once 'dataModelo.php';
        $conexion=conexion();        
        $insert="insert into formatos(nombreReporte, comentarioFormato, codigoCliente, codigoCompania) values ('$nombreReporte','$comentarioFormato','$codigoCliente','$codigoCompania')";        
        //$insert="exec SP001AgregarPrecio '$Embalaje','$Precio','$Localidad'";
        if (!odbc_exec($conexion,$insert))
        {
            die('Error: ' . odbc_error());
        }
        odbc_close($conexion);
    }
    
    function modificarFormatoModelo($codigoFormato, $nombreReporte, $comentarioFormato, $codigoCliente, $codigoCompania)
    {
        require_once 'dataModelo.php';
        $conexion=conexion();        
        //$insert="exec SP001AgregarPrecio '$Embalaje','$Precio','$Localidad'";
        $update="update formatos set nombreReporte='".$nombreReporte."', comentarioFormato='$comentarioFormato' where codigoFormato='".$codigoFormato."' and codigoCliente='".$codigoCliente."' and codigoCompania='".$codigoCompania."'"  ;
        if (!odbc_exec($conexion,$update))
        {
            die('Error: ' . odbc_error());
        }
        odbc_close($conexion);
    }
    
    /*Función para Eliminar Formatos*/
    function eliminarFormatoModelo($codigoFormato, $codigoCompania,$codigoCliente)
    {        
        require_once 'dataModelo.php';
        $conexion=conexion();
        //$update="exec SP003EliminarEmbalajeControlador '$CodigoEmbalaje'";
        $delete="delete from formatos where codigoFormato ='$codigoFormato' and codigoCliente='$codigoCliente' and codigoCompania='$codigoCompania'";
        if (!odbc_exec($conexion,$delete))
        {
            die('Error: ' . odbc_error());
        }
        odbc_close($conexion);
    }    

    function buscarFormatos()
    {
        require_once 'dataModelo.php';
        $conexion=conexion();
        $select="select f.codigoFormato, f.nombreReporte, f.comentarioFormato,f.codigoCliente,f.codigoCompania, 
        c.nombreCliente,cp.nombreCompania from formatos f
        inner join clientes c on 
        c.codigoCliente=f.codigoCliente and c.codigoCompania=f.codigoCompania
        inner join companias cp
        on cp.codigoCompania=f.codigoCompania";                
        $rs = odbc_exec($conexion,$select);
        $items=Array();
            while (odbc_fetch_row($rs)){                
                $item['codigoFormato']=odbc_result($rs,"codigoFormato");
                $item['nombreReporte']=odbc_result($rs,"nombreReporte");                
                $item['comentarioFormato']=odbc_result($rs,"comentarioFormato");                
                $item['codigoCliente']=odbc_result($rs,"codigoCliente");  
                $item['codigoCompania']=odbc_result($rs,"codigoCompania");               
                $item['nombreCliente']=odbc_result($rs,"nombreCliente");
                $item['nombreCompania']=odbc_result($rs,"nombreCliente");
                array_push($items,$item);
            }
        odbc_close($conexion);
        return $items;
    }        
    
    function buscarTodosCodigosFormatos()
    {
        require_once 'dataModelo.php';
        $conexion=  conexion();
        $select="select codigoFormato from formatos";
        //$rs = odbc_exec($conexion, "SELECT CodEmbalaje,Tipo FROM embalajes");
        $rs = odbc_exec($conexion, $select);
        $items=Array();
        while (odbc_fetch_row($rs))
        {
            $item['codigoFormato']=odbc_result($rs,"codigoFormato");            
            array_push($items,$item);
        }
        odbc_close($conexion);
        return $items;
    } 
    
    function encontrarFormatoDuplicado($codigoFormato, $codigoCompania, $codigoCliente)
    {
       require_once 'dataModelo.php';
       $conexion=conexion();
       $existe=false;
       //$rs = odbc_exec($conexion,  "select Embalaje, Localidad from precios where Embalaje='".$tipoEmbalaje."' and Localidad='".$localidad."'");       
       $select="select codigoFormato, nombreReporte, comentarioFormato, codigoCliente, codigoCompania from formatos
       where codigoformato='$codigoFormato' and codigoCompania='$codigoCompania' and codigoCliente='$codigoCliente'";       
       $rs = odbc_exec($conexion,$select);       
       if (!$conexion) 
       {           
           exit( "Error al conectar: " . $conexion);
       }
       else
       {           
           $existe=odbc_fetch_row($rs);             
       }
       odbc_close($conexion);
       return $existe;
    }
    
    /*Se debe de cambiar la lave primaria para que sea identity el campo codigo de Formato*/
    function buscarNombreFormatoPorClienteCompania($codigoCliente, $codigoCompania)
    {
         require_once 'dataModelo.php';
        $conexion=  conexion();
        $select="select codigoFormato,nombreReporte from Formatos where codigoCliente='$codigoCliente' and codigoCompania='$codigoCompania'";
        //$rs = odbc_exec($conexion, "SELECT CodEmbalaje,Tipo FROM embalajes");
        $rs = odbc_exec($conexion, $select);
        $items=Array();
        while (odbc_fetch_row($rs))
        {
            $item['nombreReporte']=odbc_result($rs,"nombreReporte");            
            $item['codigoFormato']=odbc_result($rs,"codigoFormato");            
            //$report['numeroReporte']=odbc_result($rs,"codigoFormato");
            array_push($items,$item);
        }
        odbc_close($conexion);
        return $items;
    }
    
    /*
    Funcion para validad la existencia de formatos asociados a un cliente
    Procedimiento almacenado Listo
    */
    function validarExisteDependeciaFormatoConCliente($codigoCliente)
    {
        //select codigoContrato, codigoCliente, codigoCompania from Contratos where codigoCliente='00019' and codigoCompania='006'
        require_once 'dataModelo.php';
       $conexion=conexion();
       $existe=false;
       $conexion=conexion();       
       //$rs = odbc_exec($conexion,  "select Embalaje, Localidad from precios where Embalaje='".$tipoEmbalaje."' and Localidad='".$localidad."'");       
       $select="select nombreReporte from Formatos where codigoCliente='$codigoCliente'";       
       $rs = odbc_exec($conexion,$select);       
       if (!$conexion) 
       {           
           exit( "Error al conectar: " . $conexion);
       }
       else
       {           
           $existe=odbc_fetch_row($rs);             
       }
       odbc_close($conexion);
       return $existe;
    }
    
    /*Metodo para verificar registros duplicados de acuerdo con nombre de Reporte, comentario de formato, codigo de Cliente y codigo de Compania*/
    function encontrarFormatoRepetido($nombreReporte,$comentarioFormato,$codigoCliente,$codigoCompania)
    {
        //select codigoContrato, codigoCliente, codigoCompania from Contratos where codigoCliente='00019' and codigoCompania='006'
       require_once 'dataModelo.php';
       $conexion=conexion();
       $existe=false;
       $conexion=conexion();       
       //$rs = odbc_exec($conexion,  "select Embalaje, Localidad from precios where Embalaje='".$tipoEmbalaje."' and Localidad='".$localidad."'");       
       $select="select nombreReporte from formatos where nombreReporte='$nombreReporte' and codigoCliente='$codigoCliente' and codigoCompania='$codigoCompania'";       
       $rs = odbc_exec($conexion,$select);       
       if (!$conexion) 
       {           
           exit( "Error al conectar: " . $conexion);
       }
       else
       {           
           $existe=odbc_fetch_row($rs);             
       }
       odbc_close($conexion);
       return $existe;
    }
?>
